Static Library
概要
Static Library は、アプリケーションの実行形式ファイル内にコピーされ含まれる形式の Library。その性質から、実行形式ファイルのサイズは大きくなり、ライブラリに修正が加えられても再度コンパイルしないとそれを反映できないが、アプリケーションは他のファイルに依存しないため、ファイル単体で実行可能である。拡張子は .a。 Static Library を選択して作成します。
https://gyazo.com/5573a1e7a96fc8bb810985c6111352e6
実装
適当に中身を実装します。
code:swift
class MyStaticLibrary {
func greet(to name: String) {
print("Hello, \(name)")
}
}
ビルド
Shit + Command + R でビルドする。特に何も設定しなければデフォルトの出力先に出力される (/Users/<ユーザ名>/Library/Developer/Xcode/DerivedData/<プロジェクト名>-xxxxxxxxxx/Build/Products)。ここをみると、以下のように成果物が出力されていることがわかる。
code:shell
$ tree
.
├── Debug-iphoneos
│ └── MyStaticLibrary.swiftmodule
│ ├── arm64-apple-ios.swiftdoc
│ ├── arm64-apple-ios.swiftmodule
│ ├── arm64.swiftdoc
│ └── arm64.swiftmodule
└── Debug-iphonesimulator
├── MyStaticLibrary.swiftmodule
│ ├── x86_64-apple-ios-simulator.swiftdoc
│ ├── x86_64-apple-ios-simulator.swiftmodule
│ ├── x86_64.swiftdoc
│ └── x86_64.swiftmodule
└── libMyStaticLibrary.a
4 directories, 9 files
code:shell
$ file libMyStaticLibrary.a
libMyStaticLibrary.a: current ar archive random library
参考